#pragma warning disable 108
using System;
using System.Runtime.InteropServices;
using System.Collections.Generic;
using Cephei;
using Cephei.Generic;
using Cephei.QL.Times;
namespace Cephei.QL.Times.Calendars
{
     // <summary> 
	// ! Public holidays (see: http://www.opm.gov/fedhol/):
	// <ul>
	// <li>Saturdays</li>
	// <li>Sundays</li>
	// <li>New Year's Day, January 1st (possibly moved to Monday if actually on Sunday, or to Friday if on Saturday)</li>
	// <li>Martin Luther King's birthday, third Monday in January</li>
	// <li>Presidents' Day (a.k.a. Washington's birthday), third Monday in February</li>
	// <li>Memorial Day, last Monday in May</li>
	// <li>Independence Day, July 4th (moved to Monday if Sunday or Friday if Saturday)</li>
	// <li>Labor Day, first Monday in September</li>
	// <li>Columbus Day, second Monday in October</li>
	// <li>Veterans' Day, November 11th (moved to Monday if Sunday or Friday if Saturday)</li>
	// <li>Thanksgiving Day, fourth Thursday in November</li>
	// <li>Christmas, December 25th (moved to Monday if Sunday or Friday if Saturday)</li>
	// </ul>  Holidays for the stock exchange (data from http://www.nyse.com):
	// <ul>
	// <li>Saturdays</li>
	// <li>Sundays</li>
	// <li>New Year's Day, January 1st (possibly moved to Monday if actually on Sunday)</li>
	// <li>Martin Luther King's birthday, third Monday in January (since 1998)</li>
	// <li>Presidents' Day (a.k.a. Washington's birthday), third Monday in February</li>
	// <li>Good Friday</li>
	// <li>Memorial Day, last Monday in May</li>
	// <li>Independence Day, July 4th (moved to Monday if Sunday or Friday if Saturday)</li>
	// <li>Labor Day, first Monday in September</li>
	// <li>Thanksgiving Day, fourth Thursday in November</li>
	// <li>Presidential election day, first Tuesday in November of election years (until 1980)</li>
	// <li>Christmas, December 25th (moved to Monday if Sunday or Friday if Saturday)</li>
	// <li>Special historic closings (see http://www.nyse.com/pdfs/closings.pdf)</li>
	// </ul>  Holidays for the government bond market (data from http://www.bondmarkets.com):
	// <ul>
	// <li>Saturdays</li>
	// <li>Sundays</li>
	// <li>New Year's Day, January 1st (possibly moved to Monday if actually on Sunday)</li>
	// <li>Martin Luther King's birthday, third Monday in January</li>
	// <li>Presidents' Day (a.k.a. Washington's birthday), third Monday in February</li>
	// <li>Good Friday</li>
	// <li>Memorial Day, last Monday in May</li>
	// <li>Independence Day, July 4th (moved to Monday if Sunday or Friday if Saturday)</li>
	// <li>Labor Day, first Monday in September</li>
	// <li>Columbus Day, second Monday in October</li>
	// <li>Veterans' Day, November 11th (moved to Monday if Sunday or Friday if Saturday)</li>
	// <li>Thanksgiving Day, fourth Thursday in November</li>
	// <li>Christmas, December 25th (moved to Monday if Sunday or Friday if Saturday)</li>
	// </ul>  Holidays for the North American Energy Reliability Council (data from http://www.nerc.com/~oc/offpeaks.html):
	// <ul>
	// <li>Saturdays</li>
	// <li>Sundays</li>
	// <li>New Year's Day, January 1st (possibly moved to Monday if actually on Sunday)</li>
	// <li>Memorial Day, last Monday in May</li>
	// <li>Independence Day, July 4th (moved to Monday if Sunday)</li>
	// <li>Labor Day, first Monday in September</li>
	// <li>Thanksgiving Day, fourth Thursday in November</li>
	// <li>Christmas, December 25th (moved to Monday if Sunday)</li>
	// </ul>  \ingroup calendars  \test the correctness of the returned results is tested against a list of known holidays.
	// </summary>
    [Guid ("EDD3077E-E9E7-40db-9E5C-1E6607870F0C"),ComVisible(true)]
	public interface IUnitedStates : Cephei.QL.Times.ICalendar
	{
		///////////////////////////////////////////////////////////////
        // Methods
        //
    }

    // <summary> 
	// ! Public holidays (see: http://www.opm.gov/fedhol/):
	// <ul>
	// <li>Saturdays</li>
	// <li>Sundays</li>
	// <li>New Year's Day, January 1st (possibly moved to Monday if actually on Sunday, or to Friday if on Saturday)</li>
	// <li>Martin Luther King's birthday, third Monday in January</li>
	// <li>Presidents' Day (a.k.a. Washington's birthday), third Monday in February</li>
	// <li>Memorial Day, last Monday in May</li>
	// <li>Independence Day, July 4th (moved to Monday if Sunday or Friday if Saturday)</li>
	// <li>Labor Day, first Monday in September</li>
	// <li>Columbus Day, second Monday in October</li>
	// <li>Veterans' Day, November 11th (moved to Monday if Sunday or Friday if Saturday)</li>
	// <li>Thanksgiving Day, fourth Thursday in November</li>
	// <li>Christmas, December 25th (moved to Monday if Sunday or Friday if Saturday)</li>
	// </ul>  Holidays for the stock exchange (data from http://www.nyse.com):
	// <ul>
	// <li>Saturdays</li>
	// <li>Sundays</li>
	// <li>New Year's Day, January 1st (possibly moved to Monday if actually on Sunday)</li>
	// <li>Martin Luther King's birthday, third Monday in January (since 1998)</li>
	// <li>Presidents' Day (a.k.a. Washington's birthday), third Monday in February</li>
	// <li>Good Friday</li>
	// <li>Memorial Day, last Monday in May</li>
	// <li>Independence Day, July 4th (moved to Monday if Sunday or Friday if Saturday)</li>
	// <li>Labor Day, first Monday in September</li>
	// <li>Thanksgiving Day, fourth Thursday in November</li>
	// <li>Presidential election day, first Tuesday in November of election years (until 1980)</li>
	// <li>Christmas, December 25th (moved to Monday if Sunday or Friday if Saturday)</li>
	// <li>Special historic closings (see http://www.nyse.com/pdfs/closings.pdf)</li>
	// </ul>  Holidays for the government bond market (data from http://www.bondmarkets.com):
	// <ul>
	// <li>Saturdays</li>
	// <li>Sundays</li>
	// <li>New Year's Day, January 1st (possibly moved to Monday if actually on Sunday)</li>
	// <li>Martin Luther King's birthday, third Monday in January</li>
	// <li>Presidents' Day (a.k.a. Washington's birthday), third Monday in February</li>
	// <li>Good Friday</li>
	// <li>Memorial Day, last Monday in May</li>
	// <li>Independence Day, July 4th (moved to Monday if Sunday or Friday if Saturday)</li>
	// <li>Labor Day, first Monday in September</li>
	// <li>Columbus Day, second Monday in October</li>
	// <li>Veterans' Day, November 11th (moved to Monday if Sunday or Friday if Saturday)</li>
	// <li>Thanksgiving Day, fourth Thursday in November</li>
	// <li>Christmas, December 25th (moved to Monday if Sunday or Friday if Saturday)</li>
	// </ul>  Holidays for the North American Energy Reliability Council (data from http://www.nerc.com/~oc/offpeaks.html):
	// <ul>
	// <li>Saturdays</li>
	// <li>Sundays</li>
	// <li>New Year's Day, January 1st (possibly moved to Monday if actually on Sunday)</li>
	// <li>Memorial Day, last Monday in May</li>
	// <li>Independence Day, July 4th (moved to Monday if Sunday)</li>
	// <li>Labor Day, first Monday in September</li>
	// <li>Thanksgiving Day, fourth Thursday in November</li>
	// <li>Christmas, December 25th (moved to Monday if Sunday)</li>
	// </ul>  \ingroup calendars  \test the correctness of the returned results is tested against a list of known holidays. Factory
	// </summary>
   	[ComVisible(true)]
    public interface IUnitedStates_Factory // : Collection_Factory<IUnitedStates, ICell<IUnitedStates>>
    {
        ///////////////////////////////////////////////////////////////
        // Factory methods
        //
        
	    IUnitedStates Create (Microsoft.FSharp.Core.FSharpOption<QL.Times.Calendars.UnitedStates.MarketEnum> market);
    }
}

